import { defineStore } from "pinia";
import { reactive } from "vue";
const useUser = defineStore(
  "user",
  () => {
    const defaultUser = {
      isLogin: false,
      username: "",
      avatar: "",
    };
    const user = reactive(Object.assign({}, defaultUser));
    const updateUser = (options) => {
      Object.assign(user, options);
      return user;
    };
    const removeUser = () => {
      Object.assign(user, defaultUser);
      return user;
    };
    return { user, updateUser, removeUser };
  },
  {
    persist: {
      enabled: true,
      strategies: [
        {
          key: "user",
          storage: localStorage,
        },
      ],
    },
  }
);
export default useUser;
